const HtmlWebpackPlugin = require("html-webpack-plugin");
const MiniCssExtractPlugin = require("mini-css-extract-plugin")
const { resolve } = require("path");
 
 
 module.exports = {
     entry:'./src/index.js',
     output:{
         filename:'built.js',
         path:resolve(__dirname,'build'),
     },
     module:{
         /**
          * 正常来讲 一个文件只能被一个Loader处理；
          * 当一个文件要被多个Loader处理，那么一定要先指定loader的执行顺序
          */
        rules:[
            {
                test:/\.css/,
                use:['style-loader','css-loader']
            },
            {
                test:/\.js$/,
                exclude:/node_modules/,
                //表示优先执行
                enforce:'pre',
                loader:'eslint-loader',
                options:{
                    fix:true
                }
            }
        ]
     },
     plugins:[
         new HtmlWebpackPlugin({
             template:'./src/index.html',
             //压缩html代码
             minify:{
                 //移除空格
                 collapseWhitespace:true,
                 //移除注释
                 removeComments:true
             }
         })
     ],
     //生产环境会自动压缩js文件
     mode:'production',
 }